package org.geektime.reactive.message.demo;

import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Method;
import java.lang.reflect.ParameterizedType;
import java.lang.reflect.Type;

public class JdkDynamicProxyDemo {

    static class OutgoingMethodInvocationHandler implements InvocationHandler{

        @Override
        public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {

            Type returnType = method.getGenericReturnType();

            if(returnType instanceof Class){

            }else  if(returnType instanceof ParameterizedType){
                ParameterizedType parameterizedType = (ParameterizedType) returnType;

            }

            return null;
        }
    }

}
